1. Field of the Invention
This invention relates to a method and system for communication between computer systems. In particular, it relates to a method and system for communication between heterogeneous computer systems interconnected in a computer network. The invention has particular, but not exclusive, application to enterprise application integration “EAI” software and Web Services. More particularly to a system and method for the integration of heterogeneous computer systems' components into a service broker system which simplifies application connection between different types of application programs and interfaces within the application programs, typically at enterprise level or wider.
2. Description of the Prior Art
The success of many businesses depends upon having an ability to adapt to rapid change. Many businesses have benefited from developing a sophisticated information technology (IT) infrastructure with enterprise resource planning (ERP) systems, customer relationship management (CRM) systems, and lately by embracing eCommerce in order to develop new channels to customers. Many enterprises depend on IT to accelerate business change and implement new strategies to meet new opportunities. This places a lot of pressures on the IT infrastructure of a business, both to rapidly assimilate new applications and technologies, and to reuse existing applications and business processes in new ways. As a result of IT systems having been implemented as and when required to address particular needs, many companies have islands of heterogeneous IT systems. Despite their disparate nature, in order to operate effectively, these IT systems must operate and function together as seamlessly as possible, in many cases, with the need to access a pool of data that is common to the whole enterprise. Therefore, a large enterprise typically has a complex portfolio of systems that are difficult to manage effectively.
It is a general requirement in any computer installation, from a single desktop computer to an enterprise-wide network of computers that applications within the installation can communicate with one another. Applications typically share information, applications and/or services.
A conventional approach to establishing communication between application works by relying on each application using a specific agreed mechanism, such as for example a communications protocol or a database format. A particular disadvantage of this arrangement occurs when a new application is introduced into the installation. Either the new application must be configured to use the existing protocol, or the existing applications must be adapted to use a new protocol. In practice, there are many situations in which neither of these approaches is practicable, both are likely to be time-consuming and may introduce errors or incompatibilities into the installation.
Many proposals have been made with an aim of reducing incompatibilities between applications in a computer installation. For example, ODBC database connectivity allows an application to connect to a database using a common interface, irrespective of the actual structure of the database files. If a new database is introduced into the installation, an existing application can communicate with it, provided a suitable ODBC driver is available. However, an application must have knowledge of the logical structure of a database to access it using ODBC.
The emergence of EAI allows IT managers to address some of these issues. EAI solutions offer a simple (but proprietary) way to describe a mechanism to integrate applications effectively with each other. These solutions allow various applications to integrate technically in order to share business logic and data, whereby older applications that are still of value to the business are able to integrate with newer applications. EAI is an important strategy for many companies, but there are many differing types of integration, each addressing slightly different needs. However, as the Internet has evolved over recent years, emerging technologies have moved the focus away from key bespoke product offerings to interchangeable vendor solutions, with the aim of providing increased flexibility. In particular, “web services” has emerged as a set of standards to aid interoperability between disparate systems that will increasingly form a part of a company's EAI strategy.
Yet none of these known systems provide a business with a system and method of delivering one high-level integration interface to application components to permit access to some or all middleware services and some or all back-end systems, since each application must have a coded understanding of the logical layout of the data and services that it is accessing, even if their physical nature is abstracted from the application.